package com.ltkj.baseplatform.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.ltkj.common.core.annotation.Excel;
import com.ltkj.common.core.web.domain.BaseEntity;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 游记管理对象 ser_travel_notes
 * 
 * @author ruoyi
 * @date 2023-09-03
 */
@ApiModel(value = "游记管理")
public class SerTravelNotes extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @ApiModelProperty("主键")
    private Long id;

    /** 类型ID */
    @Excel(name = "类型ID")
    @ApiModelProperty("类型ID")
    @NotNull(message = "游记类型不能为空！")
    private Long typeId;

    /** 标题 */
    @Excel(name = "标题")
    @ApiModelProperty("标题")
    @NotBlank(message = "游记标题不能为空！")
    private String title;

    /** 正文 */
    @Excel(name = "正文")
    @ApiModelProperty("正文")
    private String content;

    /** 类别（文章/视频） */
    @Excel(name = "类别", readConverterExp = "文=章/视频")
    @NotBlank(message = "游记类别（文章/视频）不能为空！")
    @ApiModelProperty("类别（0文章/1视频）")
    private String type;

    /** 状态（展示中/已折叠） */
    @Excel(name = "状态", readConverterExp = "展=示中/已折叠")
    @ApiModelProperty("状态（展示中/已折叠）")
    private String status;

    /** 发布地址 */
    @Excel(name = "发布地址")
    @ApiModelProperty("发布地址")
    private String addr;

    /** 发布地址经度 */
    @Excel(name = "发布地址经度")
    @ApiModelProperty("发布地址经度")
    private String longitude;

    /** 发布地址纬度 */
    @Excel(name = "发布地址纬度")
    @ApiModelProperty("发布地址纬度")
    private String latitude;

    /** 点赞量 */
    @Excel(name = "点赞量")
    @ApiModelProperty("点赞量")
    private Long likes;

    /** 评论量 */
    @Excel(name = "评论量")
    @ApiModelProperty("评论量")
    private Long commentNum;

    /** 查看量 */
    @Excel(name = "查看量")
    @ApiModelProperty("查看量")
    private Long viewNum;

    /** 是否删除 */
    @ApiModelProperty("是否删除")
    private String isDel;

    @ApiModelProperty("用户id")
    private Long userId;

    /** 收藏量 */
    @ApiModelProperty("收藏量")
    private Long collectNum;

    @ApiModelProperty("推荐值")
    private Integer recommentValue;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setTypeId(Long typeId) 
    {
        this.typeId = typeId;
    }

    public Long getTypeId() 
    {
        return typeId;
    }
    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }
    public void setContent(String content) 
    {
        this.content = content;
    }

    public String getContent() 
    {
        return content;
    }
    public void setType(String type) 
    {
        this.type = type;
    }

    public String getType() 
    {
        return type;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    public void setAddr(String addr) 
    {
        this.addr = addr;
    }

    public String getAddr() 
    {
        return addr;
    }
    public void setLongitude(String longitude) 
    {
        this.longitude = longitude;
    }

    public String getLongitude() 
    {
        return longitude;
    }
    public void setLatitude(String latitude) 
    {
        this.latitude = latitude;
    }

    public String getLatitude() 
    {
        return latitude;
    }
    public void setLikes(Long likes) 
    {
        this.likes = likes;
    }

    public Long getLikes() 
    {
        return likes;
    }
    public void setCommentNum(Long commentNum) 
    {
        this.commentNum = commentNum;
    }

    public Long getCommentNum() 
    {
        return commentNum;
    }
    public void setViewNum(Long viewNum) 
    {
        this.viewNum = viewNum;
    }

    public Long getViewNum() 
    {
        return viewNum;
    }
    public void setIsDel(String isDel) 
    {
        this.isDel = isDel;
    }

    public String getIsDel() 
    {
        return isDel;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Long getCollectNum() {
        return collectNum;
    }

    public void setCollectNum(Long collectNum) {
        this.collectNum = collectNum;
    }

    public Integer getRecommentValue() {
        return recommentValue;
    }

    public void setRecommentValue(Integer recommentValue) {
        this.recommentValue = recommentValue;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("typeId", getTypeId())
            .append("title", getTitle())
            .append("content", getContent())
            .append("type", getType())
            .append("status", getStatus())
            .append("addr", getAddr())
            .append("longitude", getLongitude())
            .append("latitude", getLatitude())
            .append("likes", getLikes())
            .append("commentNum", getCommentNum())
            .append("viewNum", getViewNum())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("updateTime", getUpdateTime())
            .append("updateBy", getUpdateBy())
            .append("isDel", getIsDel())
            .toString();
    }
}
